package org.xm.sk.vo.ob;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@XmlRootElement(name = "paynotify-info", namespace = "org.xm.sk")
@XmlAccessorType(XmlAccessType.NONE)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Paynotify {

    @XmlElement(name = "appid")
    String appId;                                 // 小程序ID

    @XmlElement(name = "attach")
    String attach;                                // 商家数据包

    @XmlElement(name = "bank_type")
    String bankType;                              // 付款银行

    @XmlElement(name = "cash_fee")
    String cashFee;                               // 现金支付金额

    @XmlElement(name = "cash_fee_type")
    String cashFeeType;                           // 现金支付货币类型

    @XmlElement(name = "coupon_count")
    String couponCount;                           // 代金券使用数量

    @XmlElement(name = "coupon_fee")
    String couponFee;                             // 代金券金额

    @XmlElement(name = "coupon_fee_$n")
    String couponFee$n;                           // 单个代金券支付金额

    @XmlElement(name = "coupon_id_$n")
    String couponId$n;                            // 代金券ID

    @XmlElement(name = "coupon_type_$n")
    String couponType$n;                          // 代金券类型

    @XmlElement(name = "device_info")
    String deviceInfo;                            // 设备号

    @XmlElement(name = "err_code")
    String errCode;                               // 错误代码

    @XmlElement(name = "err_code_des")
    String errCodeDes;                            // 错误代码描述

    @XmlElement(name = "fee_type")
    String feeType;                               // 货币种类

    @XmlElement(name = "is_subscribe")
    String isSubscribe;                           // 是否关注公众账号

    @XmlElement(name = "mch_id")
    String mchId;                                 // 商户号

    @XmlElement(name = "nonce_str")
    String nonceStr;                              // 随机字符串

    @XmlElement(name = "openid")
    String openId;                                // 用户标识

    @XmlElement(name = "out_trade_no")
    String outTradeNo;                            // 商户订单号

    @XmlElement(name = "result_code")
    String resultCode;                            // 业务结果

    @XmlElement(name = "return_code")
    String returnCode;                            // 返回状态码

    @XmlElement(name = "return_msg")
    String returnMsg;                             // 返回信息

    @XmlElement(name = "settlement_total_fee")
    String settlementTotalFee;                    // 应结订单金额

    @XmlElement(name = "sign")
    String sign;                                  // 签名

    @XmlElement(name = "sign_type")
    String signType;                              // 签名类型

    @XmlElement(name = "time_end")
    String timeEnd;                               // 支付完成时间

    @XmlElement(name = "total_fee")
    String totalFee;                              // 订单金额

    @XmlElement(name = "trade_type")
    String tradeType;                             // 交易类型

    @XmlElement(name = "transaction_id")
    String transactionId;                         // 微信支付订单号

}
